package qnb.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;



import qnb.entity.Student;

public interface StudentDao {
	/**
	 * 添加一个学生信息
	 * @param stu
	 * @return
	 */
	public int addStudent(Student stu);
	/**
	 * 根据学生ID修改学生信息
	 * @param stu
	 * @return
	 */
	public int updateStudent(Student stu);
	/**
	 * 根据学生ID批量删除学生信息
	 * @param studentId
	 * @return
	 */
	public int deleteStudent(String studentId);
	/**
	 * 根据学生ID 查询学生信息
	 * @param studentId
	 * @return
	 */
	public Student selectOne(String studentId);
	/**
	 * 查询所有的学生信息或模糊查询学生信息，并进行分页
	 * @param where
	 * @param oderby
	 * @param page
	 * @param pageSize
	 * @return
	 */
	public List<Student> selectPage(@Param("where") String where,@Param("oderby") String oderby,@Param("page") int page,@Param("pageSize") int pageSize);

	public int count(@Param("where") String where);

	List<Student> selectToDown(@Param("where") String where);

	List<Student> selectAll();

	public Student login(@Param("studentAccount")String studentAccount,@Param("studentPassword")String studentPassword);

	public int selectOneForAccount(@Param("studentAccount")String studentAccount);


	int updateByPrimaryKeySelective(Student student);


	/**
	 * 根据Excel导入的数据添加到数据库
	 * @param list
	 * @return
	 */
	public int addExcelData(List<Student> list);
	/**
	 * 检查Excel表中是否有重复的ID
	 * @param studentId
	 * @return
	 */
	public List<Student> checkExcel(List<String> studentId);
	/**
	 * 检查Excel表中是否有重复的账号
	 * @param studentAccount
	 * @return
	 */
	public List<Student> checkExcel2(List<String> studentAccount);
}
